package com.hnichr.ump.common.talent.library.entity;

import com.mxpioframework.security.annotation.Dict;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.persistence.*;

@Data
@EqualsAndHashCode(callSuper=false)
@Entity
@Table(name = "t_talent_resume",indexes = {@Index(columnList = "USER_ID_")})
@Schema(description = "人才库-简历")
public class Resume extends Talent {
    /**
     * 姓名
     */
    @Column(name = "NAME_")
    @Schema(description = "姓名")
    private String name;

    /**
     * 简历名称
     */
    @Column(name = "RESUME_NAME_")
    @Schema(description = "简历名称")
    private String resumeName;

    /**
     * 简历类型 0在线  1附件
     */
    @Column(name = "TYPE_")
    @Schema(description = "简历类型 0在线  1附件")
    private Integer type;

    /**
     * 简历类型 1 社招 2 校招
     */
    @Column(name = "RESUME_TYPE_")
    @Schema(description = "简历类型 1 社招 2 校招")
    private Integer resumeType;

    /**
     * 个人优势
     */
    @Column(name = "ADVANTAGE_",columnDefinition="text")
    @Schema(description = "个人优势")
    private String advantage;

    /**
     * 主要研究方向及成果(校招)
     */
    @Column(name = "MAJOR_RESEARCH_DIRECTION_",columnDefinition="text")
    @Schema(description = "主要研究方向及成果(校招)")
    private String majorResearchDirection;

    /**
     * 自我综合评价
     */
    @Column(name = "SELF_EVALUATION_",columnDefinition="text")
    @Schema(description = "自我综合评价")
    private String selfEvaluation;

    /**
     * 其他情况（校内任职情况等）(校招)
     */
    @Column(name = "OTHER_SITUATIONS_",columnDefinition="text")
    @Schema(description = "其他情况（校内任职情况等）(校招)")
    private String otherSituations;

    /**
     * 主要工作业绩(社招)
     */
    @Column(name = "MAJOR_WORK_PERFORMANCE_",columnDefinition="text")
    @Schema(description = "主要工作业绩(社招)")
    private String majorWorkPerformance;

    /**
     * 目前是否与其他单位签订三方协议（若签订请注明单位）
     */
    @Column(name = "TRIPARTITE_AGREEMENT_")
    @Schema(description = "目前是否与其他单位签订三方协议（若签订请注明单位）")
    private String tripartiteAgreement;


    /**
     * 简历语言类型  0 中文  1英文
     */
    @Column(name = "LAN_TYPE_")
    @Schema(description = "简历语言类型  0 中文  1 英文")
    private Integer lanType;

    @Column(name = "SCHOOL_TYPE_")
    @Schema(description = "学校类别 1-世界前200  2-211  9-985   0-啥也不是")
    @Dict(dicCode = "TALENT_SCHOOL_TYPE")
    private String schoolType;

    @Column(name = "HE_NAN_REN_")
    @Schema(description = "是否豫籍")
    @Dict(dicCode = "YESNO")
    private String heNanRen;

    @Transient
    @Schema(description = "用户信息")
    private PersonalInfo personalInfo;

    @Transient
    @Schema(description = "第一学历")
    private String firstDegree;

    @Transient
    @Schema(description = "最高学历")
    private String highestDegree;

    @Transient
    @Schema(description = "简历类型")
    private String resumeTypeStr;

    @Transient
    @Schema(description = "简历语言类型")
    private String lanTypeStr;

}
